package com.zgjkhis.modules.system.domain;

import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zgjkhis.domain.BaseDomain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author yzq
 * @Description 医生
 * @Date 2021/6/23 9:38
 * @Param
 * @return
 **/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("info_sales_doc")
public class InfoSalesDoc extends BaseDomain {

    @TableId
    private Long id;
    @ApiModelProperty("医生姓名")
    private String docName;
    @ApiModelProperty("医生id")
    private String docId;
    @ApiModelProperty("日期")
    private Date date;
    @ApiModelProperty("总开方数")
    private Integer allInfoNum;
    @ApiModelProperty("总成方数")
    private Integer payInfoNum;
    @ApiModelProperty("总退方数")
    private Integer refundInfoNum;
    @ApiModelProperty("西药及中成药开方数")
    private Integer xyInfoNum;
    @ApiModelProperty("中药饮片开方数")
    private Integer ypInfoNum;
    @ApiModelProperty("颗粒剂开方数")
    private Integer kljInfoNum;
    @ApiModelProperty("西药及中成药成方数")
    private Integer xyPayInfoNum;
    @ApiModelProperty("中药饮片成方数")
    private Integer ypPayInfoNum;
    @ApiModelProperty("颗粒剂成方数")
    private Integer kljPayInfoNum;

    @ApiModelProperty("西药及中成药总销售额")
    private BigDecimal xyAllInfoFee;
    @ApiModelProperty("中药饮片总销售额")
    private BigDecimal ypAllInfoFee;
    @ApiModelProperty("颗粒剂总销售额")
    private BigDecimal kljAllInfoFee;

    @ApiModelProperty("西药及中成药支付销售额")
    private BigDecimal xyPayInfoFee;
    @ApiModelProperty("中药饮片支付销售额")
    private BigDecimal ypPayInfoFee;
    @ApiModelProperty("颗粒剂支付销售额")
    private BigDecimal kljPayInfoFee;

    @ApiModelProperty("西药及中成药退款金额")
    private BigDecimal xyRefundFee=new BigDecimal("0.00");
    @ApiModelProperty("中药饮片退款金额")
    private BigDecimal ypRefundFee=new BigDecimal("0.00");
    @ApiModelProperty("颗粒剂退款金额")
    private BigDecimal kljRefundFee=new BigDecimal("0.00");

    @ApiModelProperty("总金额")
    private BigDecimal allFee;
    @ApiModelProperty("总销售额")
    private BigDecimal payFee;
    @ApiModelProperty("总退方金额")
    private BigDecimal refundFee;
    private String pharmacyId;


    public void copy(InfoSalesDoc source){
        BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
    }
}
